Call Processing System for Modifying Inmate Communication Limits

ABSTRACT

A system for customizing time limits for inmate communications in a correctional facility is disclosed. The system includes a profile subsystem that stores an inmate profile of the inmate and a communication processing subsystem comprising one or more processors configured to receive data of an inmate communication of an inmate, identify a type of communication device of the inmate and a call recipient of the inmate communication based on the data of the inmate communication, retrieve the inmate profile of the inmate form the profile subsystem, identify a plurality of behaviors of the inmate based on the inmate profile, determine a time limit based on at least one of the type of communication device, the call recipient of the inmate communication, and the plurality of behaviors of the inmate, and assign the time limit to the inmate communication of the inmate.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/237,387, filed on Dec. 31, 2018, which is a continuation of U.S.patent application Ser. No. 15/879,026, filed on Jan. 24, 2018 (now U.S.Pat. No. 10,171,680), which is a continuation of U.S. patent applicationSer. No. 15/639,798 filed on Jun. 30, 2017 (now U.S. Pat. No.9,912,821), which are incorporated by reference herein in theirentirety.

BACKGROUND Field

The disclosure relates to systems and methods for determining andmodifying time limits of inmate communications at correctionalfacilities.

Background

In a controlled environment, such as a correctional facility, inmateshave limited opportunities to interact with the outside world.Correctional facilities provide inmates with the ability to communicatewith friends, families, and/or loved ones through telephone calls as itimproves recidivism and provides incentives for inmates to follow rulesand policies of the facility. In addition to traditional telephone callsfrom payphones, correctional facilities seek to offer a wide variety ofcommunication services to inmates, such as video calls, videovisitations, and phone calls from mobile devices, among others. However,such communications for inmates are often limited by correctionalfacilities with respect to call lengths and time limits.

BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES

The accompanying drawings, which are incorporated herein and form a partof the specification, illustrate embodiments of the present disclosureand, together with the description, further serve to explain theprinciples of the disclosure and to enable a person skilled in thepertinent art to make and use the embodiments.

FIG. 1 illustrates a block diagram of an inmate communication processingsystem, according to embodiments of the present disclosure.

FIG. 2 illustrates a block diagram of an inmate communication processingserver in the inmate call processing system, according to embodiments ofthe present disclosure.

FIG. 3 illustrates a diagram of an inmate communication device,according to embodiments of the present disclosure.

FIG. 4 illustrates a flowchart diagram of a method for determining andassigning time limits to inmate communications, according to embodimentsof the present disclosure.

FIG. 5 illustrates a flowchart diagram of a method for extending timelimits of inmate communications, according to embodiments of the presentdisclosure.

FIG. 6 illustrates a block diagram of a general purpose computer thatmay be used to perform various aspects of the present disclosure.

The present disclosure will be described with reference to theaccompanying drawings. In the drawings, like reference numbers indicateidentical or functionally similar elements. Additionally, the left mostdigit(s) of a reference number identifies the drawing in which thereference number first appears.

DETAILED DESCRIPTION

The following Detailed Description refers to accompanying drawings toillustrate exemplary embodiments consistent with the disclosure.References in the Detailed Description to “one exemplary embodiment,”“an exemplary embodiment,” “an example exemplary embodiment,” etc.,indicate that the exemplary embodiment described may include aparticular feature, structure, or characteristic, but every exemplaryembodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same exemplary embodiment. Further, when a particularfeature, structure, or characteristic is described in connection with anexemplary embodiment, it is within the knowledge of those skilled in therelevant art(s) to affect such feature, structure, or characteristic inconnection with other exemplary embodiments whether or not explicitlydescribed.

The exemplary embodiments described herein are provided for illustrativepurposes, and are not limiting. Other exemplary embodiments arepossible, and modifications may be made to the exemplary embodimentswithin the spirit and scope of the disclosure. Therefore, the DetailedDescription is not meant to limit the invention. Rather, the scope ofthe invention is defined only in accordance with the following claimsand their equivalents.

Embodiments may be implemented in hardware (e.g., circuits), firmware,software, or any combination thereof. Embodiments may also beimplemented as instructions stored on a machine-readable medium, whichmay be read and executed by one or more processors. A machine-readablemedium may include any mechanism for storing or transmitting informationin a form readable by a machine (e.g., a computing device). For example,a machine-readable medium may include read only memory (ROM); randomaccess memory (RAM); magnetic disk storage media; optical storage media;flash memory devices; electrical, optical, acoustical or other forms ofpropagated signals (e.g., carrier waves, infrared signals, digitalsignals, etc.), and others. Further, firmware, software, routines,instructions may be described herein as performing certain actions.However, it should be appreciated that such descriptions are merely forconvenience and that such actions in fact result from computing devices,processors, controllers, or other devices executing the firmware,software, routines, instructions, etc. Further, any of theimplementation variations may be carried out by a general purposecomputer, as described below.

For purposes of this discussion, any reference to the term “module”shall be understood to include at least one of software, firmware, orhardware (such as one or more circuit, microchip, or device, or anycombination thereof), and any combination thereof. In addition, it willbe understood that each module may include one, or more than one,component within an actual device, and each component that forms a partof the described module may function either cooperatively orindependently of any other component forming a part of the module.Conversely, multiple modules described herein may represent a singlecomponent within an actual device. Further, components within a modulemay be in a single device or distributed among multiple devices in awired or wireless manner.

The following Detailed Description of the exemplary embodiments will sofully reveal the general nature of the invention that others can, byapplying knowledge of those skilled in relevant art(s), readily modifyand/or adapt for various applications such exemplary embodiments,without undue experimentation, without departing from the spirit andscope of the disclosure. Therefore, such adaptations and modificationsare intended to be within the meaning and plurality of equivalents ofthe exemplary embodiments based upon the teaching and guidance presentedherein. It is to be understood that the phraseology or terminologyherein is for the purpose of description and not of limitation, suchthat the terminology or phraseology of the present specification is tobe interpreted by those skilled in relevant art(s) in light of theteachings herein.

Overview

In inmate communications, correctional facilities impose strict timelimits on inmate phone calls as a result of a limited number ofpayphones and/or landline phones to accommodate thousands of inmates ina correctional facility. For example, correctional facilities impose atime limit of 15 minutes for each inmate phone call because there arenot enough payphones and/or landline phones for inmates to use in thecorrectional facility. In addition, time limits on inmate phone callscan be restricting particularly when an inmate needs to communicate withan individual, such as his or her attorney or a family member, for acall length that is longer than the allotted time limit. For suchcommunications, the inmate may need to redial a called party repeatedlyafter the time limit of a phone call has transpired in order tocommunicate with the called party for a time period longer than the timelimit. The inmate also has to wait for a certain period of time after aphone call before the inmate is permitted to place another call. Witheach redial, the inmate incurs additional costs and has to wait forextensive periods of time before another phone call can be placed, whichis increasingly expensive and time-consuming for inmates.

Additionally, strict time limits for inmate phone calls might beunnecessary because inmates are not limited only to using the payphonesand/or landline phones that are located within the correctionalfacility. For example, inmates can use personal mobile devices issued bythe correctional facility to place phone calls in addition to oralternative to the payphones in the facility. Inmates might not have toshare the phones or time permitted for using the phones with otherinmates because each inmate may have access to his or her owncommunication device issued by the facility. On the contrary, inmatephone calls without any time limit or restriction may also beundesirable, resulting in inmates engaging in illicit or disallowedactivities during lengthy phone calls. Accordingly, there is a need fornew technologies, systems, and methods for determining and customizingtime limits for inmate communications in correctional facilities.

Inmate Communication Processing System

FIG. 1 illustrates a block diagram of an inmate communication processingsystem 100, according to embodiments of the present disclosure. Inmatecommunication processing system 100 includes an inmate communicationprocessing server 120 configured to receive communication data from acommunication center 110. In this disclosure, communication data refersto data collected during real-time communications between two parties,such as voice calls, audio communications, and/or video communicationsbetween an inmate in a controlled environment using inmate communicationsystem 130 and an outsider using outsider communication system 140. Insome embodiments, communication data includes the communication itself,such as audio of a voice calls, as well as data related to thecommunication, as will be described in further detail below. The inmatecommunication processing server 120 connects to the communication center110 via a network 101. The network 101 includes at least one of a localarea network (LAN), wireless area network (WAN), or the Internet.

In some embodiments, the communication center 110 connects the inmatecommunication system 130 to the outsider communication system 140. Forexample, the communication center 110 facilitates call routing and/orvideo conferencing for parties within a correctional facility andoutside parties, such as via devices within the inmate communicationsystem 130 and outsider communication system 140. Inmate communicationsystem 130 includes one or more communication devices available toinmates to perform voice calls within a correctional facility andincludes any or all devices such as a plurality of telephones 132 (e.g.,telephones 132 a-132 n), a plurality of mobile devices 134 (e.g., mobiledevices 134 a-134 n), and a plurality of wireless communication devices136 (e.g., wireless communication devices 136 a-136 n). In anembodiment, the telephones 132 comprise payphones and/or landline phonesthat are located locally within the correctional facility, such as in adesignated area or room of the controlled environment. For example, thetelephones 132 utilize analog “plain old telephony service” (POTS) linesor integrated services digital network (ISDN) lines. In anotherembodiment, the telephones 132 comprise Voice over Internet (VoIP)phones.

Mobile devices 134 and wireless communication devices 136 are alsoavailable to inmates to perform real-time communications, such as voicecalls, video calls, and/or video conferences. In some embodiments,wireless communication devices 136 comprise at least one of a tabletcomputer, a laptop computer, or any other computing device capable ofviewing a user interface. Real-time communications from mobile devices134 and wireless communication devices 136 are routed through a wirelessaccess point 138 (e.g., a router), in which the wireless access point138 provides connectivity to the mobile devices 134 and wirelesscommunication devices 136. In some embodiments, inmates are providedwith access to at least one of telephones 132, mobile devices 134,and/or wireless communication devices 136 located within in thecorrectional facility. The communication center 110 connects to thetelephones 132, mobile devices 134, and wireless communication devices136 in the inmate communication system 130 via a network 103. Thenetwork 103 comprises at least one of a LAN, WAN, or the Internet. Thecommunication center 110 also connects to the outsider communicationsystem 140. Outsider communication system 140 includes one or morecommunication devices available to outsiders or individuals external tothe correctional facility and/or outside of the inmate communicationsystem 130. For example, outsiders include at least one of attorneys,family members, friends, loved ones, or inmates located in anothercorrectional facility that is different from the correctional facilityof inmate communication system 130. Outsider communication system 140includes communication devices, such as a telephone 142, mobile device144, and/or a wireless communication device 146.

Although only one telephone 142, one mobile device 144, and one wirelesscommunication device 146 is shown in FIG. 1, it is understood that therecan be any number of components 142, 144, and 146 in the outsidercommunication system 140. The communication center 110 connects to theoutsider communication system 140 via a network 105, in which thenetwork 105 comprises at least one of a WAN, the Internet, and thePublic Switched Telephone Network (PSTN). In an embodiment, the WANfacilitates communications with an outsider communication system 140 inother nearby prisons, such as correctional facilities within the samecounty, state, jurisdiction, or the like. For example, telephones 142,mobile devices 144 and/or wireless communication devices 146 located atother correctional facilities provide cross-facility visitations betweeninmates. In another embodiment, the PSTN is used to provide connectivityto the telephones 142, mobile devices 144, and wireless communicationdevices 146 over traditional data networks.

Inmate Communication Processing Server

FIG. 2 illustrates a block diagram of the inmate communicationprocessing server 200, according to embodiments of the presentdisclosure. Inmate communication processing server 200 represents anexemplary embodiment of inmate communication processing server 120 inFIG. 1. Inmate communication processing server 200 includes at least oneof a processing subsystem 210 and a communication database 220, as shownin FIG. 2. In some embodiments, processing subsystem 210 includes one ormore processors, computers, or servers identified as modules and isconstructed as individual physical hardware devices, or as virtualdevices, such as a virtual server.

In some embodiments, processing subsystem 210 functions as the primarylogic processing center in inmate communication processing server 200.Processing subsystem 210 manages and facilitates overall communicationbetween modules and database(s) of inmate communication processingserver 200 and devices and/or systems external to inmate communicationprocessing server 200, such as telephones 132, mobile devices 134,wireless communication devices 136, outsider communication system 140,and/or communication center 110. Processing subsystem 210 includescommunication module 212, inmate profile module 214, time limitassignment module 216, and time limit extension module 218.

Communication module 212 obtains and manages data for inmatecommunications in the correctional facility. Communication module 212facilitates monitoring, processing, and/or recording of audio and/orvideo collected during voice calls and video calls between an inmate ina controlled environment using inmate communication system 130 and anoutsider using outsider communication system 140. In some embodiments,communication module 212 receives communication data, such as audio orvideo for each communication, from the communication center 110. In someembodiments, communication module 212 receives communication data for aplurality of inmate communications concurrently for a plurality ofinmates at the correctional facility. In addition to receiving thecommunication data, communication module 212 is also configured toperform format conversion, decryption, and/or encryption ofcommunication data received from the communication center 110.

Different audio and video devices that participate in communicationsemploy a variety of unique communication standards. Communication module212 performs conversion of communications received from thecommunication center 110 to different formats in order to extract and/oridentify metadata from the communication data. In some embodiments,metadata comprises data associated with the communication data, whichincludes at least one of a date and time of the communication,identities of parties on the communication, a type of encoding (e.g.,audio or video compression and decompression), a rate of encoding (e.g.,bit rate), a location of devices utilized during the communication,which device(s) are being used for the communication (e.g., telephone132, mobile device 134, or wireless communication device 136), and otherattributes or characteristics of the communication.

For example, communication module 212 receives audio data fromcommunication center 110 and determines that the type of communicationdevice used for the communication is a telephone 132. In anotherexample, communication module 212 receives audio data from communicationcenter 110 and determines that the type of communication device used forthe communication is a mobile device 134. In yet another example,communication module 212 receives video data from communication center110 and determines that the type of communication device used for thecommunication is a mobile device 134 or a wireless communication device136. Communication module 212 logs/and or stores this data correspondingto the type of communication device in the communication module 212and/or the communication database 220, and other modules in theprocessing subsystem 210 (e.g., inmate profile module 214, time limitassignment module 216, and/or time limit extension module 218) areprovided with access to this stored data. In some embodiments, datacorresponding to an inmate communication includes at least one of audiodata/video data collected during a communication (e.g., an audio call,voice call, video conference, etc.) and metadata of the inmatecommunication.

In additional embodiments, communication module 212 performs voicerecognition and/or image recognition on video and/or audio received fromthe communication center 110 to verify the identity of an inmate and/orthe identity of an outsider as the call recipient in a communication.Communication module 212 utilizes one or more speech recognition, voicebiometrics, and/or image processing algorithms to identify an inmate orcall recipient and determine whether audio and/or images of an inmate'sor call recipient's voice or image in a communication match referenceaudio and/or reference images of the inmate's or call recipient's voiceor image. For example, reference audio and/or reference images of theinmate's or call recipient's voice or image are extracted and compiledfrom previous inmate communications and stored in the communicationmodule 212 and/or the communication database 220. If the audio or imagesof the inmate's or call recipient's voice or image do not match, thecommunication module 212 may communicate with processing subsystem 210to suspend the communication between the inmate and the called party. Insome embodiments, communication module 212 transmits data regarding theidentity of the call recipient in an inmate communication to at leastone of inmate profile module 214, time limit assignment module 216,and/or time limit extension module 218.

Inmate profile module 214 obtains and stores profile information,behavioral history, and inmate calling information for each inmate inthe correctional facility. In some embodiments, inmate profile module214 obtains profile information related to the inmates from one or moreof (a) a jail management system (JMS) or an offender management system(OMS) operated by the jurisdiction of the correctional facility, (b)public database containing information on the inmates, or (c) aquestionnaire provided by a web page, a personal approved number (PAN)list, or booking information. In some embodiments, profile informationobtained by inmate profile module 214 includes personal information foreach inmate, such as names, previous residences or correctionalfacilities, authorized contacts (e.g., including a name, identity, phonenumber, and the like for each authorized contact), family members, andlanguages.

Inmate profile module 214 also collects a behavioral history for eachinmate, in which the behavioral history includes information regarding aplurality of behaviors of an inmate at the correctional facility duringhis or her sentence. In some embodiments, the plurality of behaviors ofthe inmate include at least one of good behaviors or conduct, such asthe inmate following the rules and policies of the correctional facilityand jurisdiction, and bad behaviors or conduct, such as the inmatedisregarding the rules and policies of the correctional facility andjurisdiction. For example, good behaviors for an inmate include theinmate following the rules and policies and also avoiding one or moreprohibited activities in the correctional facility that arepredetermined by the jurisdiction. In another example, bad conductbehaviors include the inmate engaging in prohibited activities orinfractions within the correctional facility, such as altercations withother inmates and/or infractions related to telephone behavior.

In some embodiments, inmates are rated on a numerical scale for theirbehaviors by one or more employees of the correctional facility or bythe jurisdiction. For example, inmates are rated on a scale from 1 to10, in which 1 indicates a “poor” rating, 10 indicates a “good” rating,and 2-9 indicate rating levels in between. Inmates who exhibit good orexceptional behaviors at the correctional facility are rated a 10,whereas inmates who exhibit bad or negative behaviors at thecorrectional facility are rated a 1. Inmate profile module 214 compilesand stores the values of one or more ratings of the inmate's behaviorsin an inmate profile for each inmate. In other embodiments, inmates areawarded good behavior credits for performing certain behaviors and/orfor avoiding infractions within the correctional facility. In suchcases, inmate profile module 214 compiles and stores the number of goodbehavior credits in an inmate profile for each inmate. The good behaviorvalues or credit information is stored in the inmate profile module 214and/or in the communication database 220.

In additional embodiments, the inmate profile module 214 also obtainsbooking information or case information for each inmate, such as names,addresses, and contact information (e.g., phone numbers) of one or moreattorneys, judges, witnesses, or other individuals pertinent to aninmate's case. Based on this information, the inmate profile module 214is configured to compile a list of approved contacts that the inmate isallowed to contact and/or a list of contacts that the inmate isrestricted from contacting. The list of approved contacts and the listof restricted contacts include names, identities, and phone numbers foreach listed contact. In some embodiments, the list of approved contactsalso includes values of time limits that have been allotted for inmatecommunications with certain approved contacts. For example, the list ofapproved contacts may include an inmate's family member and the inmate'sattorney. In some cases, the inmate is permitted 20 minutes, 30 minutes,or another period of time to communicate with the family member and 45minutes, 60 minutes, or another period of time to communicate with theattorney, or vice versa. The time limits permitted for communicationswith different call recipients are determined and assigned by the timelimit assignment module 216, as will be described in further detailbelow, and the time limits are included in the list of approvedcontacts.

Inmate profile module 214 also collects and manages inmate callinginformation, such as a calling history for each inmate, including atleast one of previously dialed phone numbers, identities of individualscalled in a phone call or a video conference/call, dates, times anddurations of each audio call or video call of each inmate, and the like.In some embodiments, the inmate profile module 214 compiles the callinghistory for each inmate from data received from the communication module212. For example, the calling history for each inmate includesinformation for communications received from the communication module212 over a predetermined period of time, such as 30 days, one month, 6months, one year, or any other period of time during each inmate'ssentence at the correctional facility. Inmate calling histories, list ofapproved contacts, and lists of restricted contacts for each inmate arestored in the inmate profile module 214, communication module 212,and/or the communication database 220 and may be accessed by the timelimit assignment module 216 and/or the time limit extension module 218.

Time limit assignment module 216 determines and assigns time limits forinmate communications at the correctional facility. In particular, timelimit assignment module 216 is configured to determine time limits basedon data obtained from the communication module 212 and inmate profilemodule 214. In some embodiments, time limit assignment module 216interfaces with the communication module 212 to identify a type ofcommunication device utilized by an inmate during an inmatecommunication, as well as whether the inmate communication is an audiocall or a video call. For example, time limit assignment module 216receives data from the communication module 212 indicating that theinmate is participating in an audio call or a video call and using atleast one of a payphone or landline such as telephone 132, a smartphoneor mobile device such as mobile device 134, a tablet computer such aswireless communication device 146, or the like.

In some cases, time limit assignment module 216 determines differenttime limits for an inmate communication based on the type ofcommunication device that the inmate is utilizing and/or the type ofcommunication in which the inmate is participating. For example, if thetime limit assignment module 216 identifies that the inmate iscommunicating in an audio or voice call on a payphone, the time limitassignment module 216 determines a first value for the time limit of theinmate communication. If the time limit assignment module 216 identifiesthat the inmate is communicating in a video call on a tablet computer,the time limit assignment module 216 determines a second value for thetime limit of the inmate communication. In this example, the secondvalue for the time limit of the inmate communication is greater than thesecond value for the time limit of the inmate communication. The timelimit values for the different communications and varying communicationdevices may be decided upon by the correctional facility in order toaccommodate for communication bandwidth and the number of inmates at thecorrectional facility.

In additional embodiments, time limit assignment module 216 determinesvarious time limits for an inmate communication based on an amount offunds available to an inmate for phone calls, video calls, or the like.For example, each inmate has an account (e.g., a calling account) withfunds for inmate communications at the correctional facility. Funds aredeposited into the inmate's account prior to inmate communications inorder for the inmate to pay for phone calls, video calls, or othercommunications on an inmate communication device (e.g., telephone 132,mobile device 134, or wireless communication device 136). In someembodiments, time limit assignment module 216 retrieves accountinformation for an inmate from inmate profile module 214. For example,account information for a plurality of inmates, includes one or more ofinmate names, inmate identification numbers, correctional facility namesand locations, names of financial institutions, account numbers androuting numbers for financial institutions of inmates, credit cardnumbers, debit card numbers, account balances, or the like. Time limitassignment module 216 identifies the amount of funds available in theinmate's account based on the inmate's account information (e.g., duringan inmate communication) and determines a time limit value for anongoing inmate communication based on how much time the inmate canafford to pay for a phone call, audio call, or video call from theremaining funds in the inmate's account.

Furthermore, time limit assignment module 216 also determines differenttime limits for inmate communications based on the call recipient ofeach inmate communication. In some embodiments, time limit assignmentmodule 216 interfaces with communication module 212 and inmate profilemodule 214 to obtain data regarding the identity of a called party in aninmate communication. Time limit assignment module 216 receives dataverifying the call recipient of an inmate communication fromcommunication module 212 and then retrieves an inmate profile of theinmate from the inmate profile module 214 or the communication database220. The inmate profile includes the inmate's behavioral history,calling history, and a list of approved contacts with whom the inmate isallowed to communicate. In some embodiments, time limit assignmentmodule 216 is configured to determine if the call recipient of theinmate communication is on the list of approved contacts by matching aname and/or phone number of the call recipient with an entry in thelist. If the call recipient is not included in the list, time limitassignment module 216 communicates with processing subsystem 210 tosuspend the communication between the inmate and the call recipient.

If the call recipient is included in an entry in the list of approvedcontacts, then time limit assignment module 216 identifies a time limitvalue permitted for the inmate's communication with the call recipient,in which the time limit value is also included in the entry. Forexample, the time limit value in the entry for the call recipient mayalready have been assigned prior to the inmate's communications with thecall recipient and may be based on the type of inmate communication andthe type of communication device that the inmate is utilizing. In someembodiments, the time limit assignment module 216 determines time limitvalues for call recipients by accessing inmate calling history, such asidentities of individuals called and times and durations of previousvideo calls and audio calls of inmates, from the inmate profile module214, in order to determine the durations of previous communications withcertain call recipients and assign a time limit for communications withsuch call recipients accordingly. For example, if an inmate has acalling history of communicating with a loved one or attorney for about30-45 minutes (or another period of time) during phone calls over thepast 30 days, 2 months, 6 months or longer, then the time limitassignment module 216 assigns a time limit value of 45 minutes for theinmate's audio communications with the loved one or attorney. In somecases, time limit assignment module 216 employs Bayesian statistics oralgorithms, machine learning algorithms, deep learning algorithms, orthe like to identify patterns in the inmate's calling history andcompute time limit values accordingly.

In additional embodiments, time limit assignment module 216 utilizes theinmate's behavioral history to determine and assign time limit values toinmate communications. For example, time limit assignment module 216parses data of an inmate profile to obtain values of one or more ratingsof an inmate's behaviors at the correctional facility. For example, theinmate is scored or given ratings on a numerical scale according to hisor her behaviors at the correctional facility, including followingand/or disregarding rules and policies of the correctional facility andengaging in infractions, or the like. In some embodiments, time limitassignment module 216 determines time limit values for inmatecommunications corresponding to the values of the one or more ratings ofthe inmate's behavior. For example, time limit assignment module 216assigns a first time limit to a first inmate with a behavior rating of“1” (e.g., on a scale of 1 to 10 with 1 indicating “poor” behavior) anda second time limit to a second inmate with a behavior rating of “10”(indicating “good” behavior), in which the value of the first time limitis longer than the value of the second time limit.

In some embodiments, time limit assignment module 216 identifies whetherat least one value of the one or more ratings of the inmate's behaviorsis above or below a predefined threshold. Time limit assignment module216 utilizes the predefined threshold to assess whether one or moreratings of the inmate's behaviors meet a mandatory score or rating levelto obtain a time limit of a certain value. For example, using a scale of1 to 10, time limit assignment module 216 identifies whether theinmate's behavior ratings are equal to or above a 6 in order to assign atime limit of 1 hour for inmate communications. In another example, ifthe inmate's behavior ratings are below a 5, time limit assignmentmodule 216 assigns a time limit of 30 minutes for the inmate'scommunications. In some embodiments, time limit assignment module 216updates or adds additional time to an allotted time limit based on theone or more ratings of the inmate's behaviors. By allowing time limitsfor inmate communications to be customized based on inmate behaviors,the inmate communication processing server rewards inmates with goodbehaviors with longer time limits for communication with family members,friends, and loved ones than the time limits assigned to inmates withbad behaviors. Communication time limits based on inmate behaviorsprovides a further incentive for inmates to follow the rules andpolicies of a correctional facility and avoid engaging in infractions orprohibited activities.

In some embodiments, time limit assignment module 216 assigns timelimits to inmates by associating particular time limits with inmates ina plurality of records stored within the time limit assignment module216 and/or the communication database 220. After time limits have beendetermined and assigned by time limit assignment module 216, theprocessing subsystem 210 applies each time limit value to inmatecommunications with various call recipients. In some embodiments, timelimit assignment module 216 performs time limit assignment for inmatecommunications in or near real-time (e.g., as the phone calls or videocalls are occurring), whereas in other embodiments, time limitassignment module 216 determines time limits for an inmate prior to theinitiation of communication with a call recipient.

In some embodiments, processing subsystem 210 applies time limits toinmate communications in or near real-time (e.g., as the phone calls orvideo calls are occurring). For example, processing subsystem 210applies a time limit to an inmate communication by suspending the inmatecommunication after the duration of the inmate communication has reachedthe time limit. For example, time limit assignment module 216 determinesand assigns a time limit for an inmate's call with a family member to bea certain period of time, such as one hour. After the call has reachedone hour, the processing subsystem 210 suspends or disconnects theinmate's call with the family member.

Time limit extension module 218 determines and assigns extensions fortime limits of inmate communications at the correctional facility. Inparticular, time limit extension module 218 communicates with inmateprofile module 214 and time limit assignment module 216 to identify atime limit that has been assigned for a particular inmate communicationand generate one or more alerts regarding the time limit. In someembodiments, time limit extension module 218 generates one or morealerts to transmit to an inmate communication device (e.g., telephone132, mobile device 134, or wireless communication device 136), in whichthe one or more alerts indicate the time limit assigned to the inmatecommunication. In additional or alternative embodiments, time limitextension module 218 generates one or more alerts to transmit to theinmate communication device after determining that a remaining time inthe inmate communication is equal to or less than a predetermined periodof time. For example, time limit extension module 218 determines that 10seconds, 30 seconds, 1 minute, 5 minutes, 10 minutes, or anotherpredetermined period of time remains in the inmate communication, andtime limit extension module 218 transmits one or more alerts to aninmate communication device to notify the inmate of the remaining lengthof time in the inmate communication.

In some embodiments, the one or more alerts transmitted from the timelimit extension module 218 to the inmate communication device includeone or more options for the inmate to extend the time limit of his orher communication. For example, inmates can request to extendcommunication time limits via their inmate communication devices, andtime limit extension module 218 determines whether each inmate isapproved or eligible for a time limit extension. In some embodiments, inresponse to a request, time limit extension module 218 determineswhether an inmate is approved or eligible for a time limit extension byobtaining information from the inmate profile module 214 and/orcommunication database 220, such as inmate profile information,behavioral history, calling history, and/or other informationpredetermined by the correctional facility or jurisdiction.

In some embodiments, time limit extension module 218 determines whetherthe inmate is eligible to extend the time limit during communicationswith a particular call recipient. For example, the inmate may be allowedto extend communications with his or her attorney up to several hours(e.g., 2 hours, 5 hours, etc.) or an unlimited period of time, whereasthe inmate is permitted to extend communications with a family member orfriend by merely 30 minutes, 45 minutes, or the like. Such timeextension information and policies for extending time limits may be setor input by one or more employees, prison security personnel, or otheradministrators of the correctional facility, and the time extensionpolicies are applied by the time limit extension module 218.

If an inmate is eligible or approved for time extensions, time limitextension module 218 determines if a specific time extension has beenrequested and whether an inmate is approved for that specific timeextension. For example, the inmate may request to extend a call with hisor her family member by 1 hour, but the inmate has only been approvedfor a 45-minute time extension. In such cases, time limit extensionmodule 218 may have to decline the inmate's request for a specific timeextension and assign a predetermined extension to the communicationinstead. In some embodiments, time limit extension module 218 adds timeto the time limit of an inmate communication based on good behaviors ofthe inmate. For example, if at least one value of one or more ratings ofthe inmate's behaviors is above a predefined threshold, time limitextension module 218 extends the inmate's time limit for the inmatecommunication by an additional 15 minutes, 30 minutes, 45 minutes, 1hour, or another predetermined period of time.

In some embodiments, processing subsystem 210 applies time limitextensions to inmate communications in or near real-time (e.g., as thephone calls or video calls are occurring). For example, processingsubsystem 210 applies a time limit extension to an inmate communicationby adding a time period to the time limit of the inmate communicationduring the inmate communication. For example, time limit extensionmodule 218 determines that an inmate is eligible or approved for a timeextension and extends the time limit of an inmate communication with afamily member by a certain period of time. After the call has reachedthe end of the time limit extension, the processing subsystem 210suspends or disconnects the inmate's call with the family member.

In additional or alternative embodiments, processing subsystem 210 isconfigured to turn off or deactivate the time limit feature for inmatecommunications. For example, correctional facilities may wish to allowinmates to be able to speak on the phone (e.g., telephone 132 and/ormobile device 134) and/or video chat (e.g., mobile device 134 and/orwireless communication device 136) with family members, friends,attorneys, or the like for unlimited periods of time without any timelimits. Administrators of a correctional facility (e.g., one or moreemployees or personnel of the correctional facility or jurisdiction) mayspecify such preferences for inmate communications by providinginstructions to deactivate time limits to the inmate communicationprocessing server 200 via one or more computing devices. For example,processing subsystem 210 of the inmate communication processing server200 receives the instructions to deactivate time limits from computingdevices associated with the administrators of the correctional facility.Based on the instructions, processing subsystem 210 communicates withtime limit assignment module 216 to deactivate time limits for inmatecommunications by transmitting a “stop” command to time limit assignmentmodule 216. The “stop” command disables the operations of the time limitassignment module 216 and causes the time limit assignment module 216 toturn off, deactivate, and/or prevent time limits from being assigned toinmate communications.

In additional or alternative embodiments, processing subsystem 210 isconfigured to turn off or deactivate the time limit extension featurefor inmate communications. For example, correctional facilities may wishto prevent extensions of inmate communication time limits. In anotherexample, correctional facilities may have already deactivated the timelimit feature for inmate communications and might not need the timelimit extension feature to be applied for calls with unlimited timeperiods. In order to deactivate the time limit extension feature,administrators of the correctional facility may specify such preferencesfor inmate communications by providing instructions to deactivate timelimit extensions to the inmate communication processing server 200 viaone or more computing devices. For example, processing subsystem 210 ofthe inmate communication processing server 200 receives the instructionsto deactivate time limit extensions from computing devices associatedwith the administrators of the correctional facility. Based on theinstructions, processing subsystem 210 communicates with time limitextension module 218 to deactivate time limit extensions for inmatecommunications by transmitting a “stop” command to time limit extensionmodule 218. The “stop” command disables the operations of the time limitextension module 218 and causes the time limit extension module 218 toturn off, deactivate, and/or prevent time limit extensions from beingassigned to inmate communications.

Communication database 220 comprises any number of databases and/orservers, and stores and organizes data in one or more relationaldatabases. Communication database 220 runs a database management system,such as MYSQL™, to provide an example. In some embodiments,communication database 220 includes organized data, such as inmateprofile data, inmate behavior data and ratings, predefined thresholdvalues, calling history data, audio data, video data, assigned timelimits, assigned time extensions, predetermined lengths of time forextensions, and settings that are indexed and linked to allow access todata for processing subsystem 210, communication module 212, inmateprofile module 214, time limit assignment module 216, and/or time limitextension module 218.

Inmate Communication Device

FIG. 3 illustrates a diagram of an inmate communication device 300,according to embodiments of the present disclosure. In some embodiments,the inmate communication device 300 represents an exemplary embodimentof mobile device 134 or communication device 136 in FIG. 1. The inmatecommunication device 300 comprises a display 302 which illustrates anexample user interface during an inmate communication between an inmateand a called party. The user interface of display 302 presents theinmate with information regarding an ongoing communication, such as anaudio call or a video call. For example, the user interface shows theidentity of a called party (e.g., a picture, a first name, and last nameof the called party) and a call time indicating the current duration ofthe call.

The user interface also includes an alert 304. The alert 304 comprises anotification regarding the time limit of the call and time limitextension options. For example, the inmate is assigned a time limit of45 minutes (e.g., by the inmate communication processing server 200),and the alert 304 notifies the inmate of the assigned time limit and alength of time remaining in the call. The alert 304 also provides theinmate with different options from which the inmate may choose duringthe call. For example, the alert 304 includes two options for extendingthe time limit of the inmate call, such as a first option for“Auto-extend” in which the inmate can request to extend the time limitautomatically and a second option for “Choose extension” in which theinmate can choose the amount of time by which to extend the inmate call.By selecting the “Auto-extend” option, the inmate's call isautomatically extended by a predetermined length of time, which isdetermined by the inmate communication processing server 200. Forexample, the inmate's call is extended by 5 minutes, 10 minutes, 20minutes, or another predetermined length of time.

The “Choose extension” option allows the inmate to decide upon aspecific length of time by which the inmate desires to extend the call.The inmate provides user input to request an extension time includingthe specific length of time through the display 302 of the inmatecommunication device 300. In some cases, the inmate communicationprocessing server 200 receives the request for the extension time fromthe inmate communication device 300 and determines if the inmate iseligible or qualified for the extension time. If the inmate is eligibleor qualified for the extension time, the specific length of time isapplied to the call, and the inmate is notified of the extension throughthe display 302 of the inmate communication device 300.

In other embodiments, the inmate is satisfied with the current durationof the call and might not be interested in extending the call. Thus, theinmate can choose an option to “Suspend in 10 seconds” which allows theinmate to suspend the call after the allotted time has expired, which inthis example, is in 10 seconds. Alternatively, the inmate can chooseanother option to “Suspend now” which allows the inmate to end the callat the present time. By providing inmates with a variety of options forextending time limits, the inmate communication processing systemcustomizes and improves inmate communications with called parties in anefficient manner.

System Operation

Operations of determining time limits of inmate communications andprovided time limit extensions to inmates in a correctional facilitythrough inmate communication processing system 100 will be describedwith respect to FIGS. 4 and 5. Although the physical devices andcomponents that form the system have largely already been described,additional details regarding their more nuanced operation will bedescribed below with respect to FIGS. 1-3. While FIGS. 4 and 5 containmethods of operation of determining and extending time limits for inmatecommunications through the inmate communication processing system 100,the operations are not limited to the order described below, and variousoperations can be performed in a different order. Further, two or moreoperations of each method can be performed simultaneously with eachother.

FIG. 4 illustrates a flowchart diagram of a method 400 of determiningand assigning time limits to inmate communications, via an inmatecommunication processing server, such as inmate communication processingserver 200 of FIG. 2, according to embodiments of the presentdisclosure. The steps of method 400 are performed by subsystems andmodules of inmate call processing server 200, such as communicationmodule 212, inmate profile module 214, time limit assignment module 216,and/or time limit extension module 218. Method 400 of FIG. 4 begins withstep 401 of receiving data of an inmate communication. For example,inmate call processing server 200 receives data corresponding to aninmate communication of an inmate from communication center 110. In someembodiments, inmate call processing server 200 receives communicationdata for a plurality of inmate communications concurrently fromcommunication center 110, wherein communication data for each inmate isanalyzed for determining and assigning time limits.

At step 402, the inmate call processing server identifies the type ofcommunication device of the inmate. For example, inmate call processingserver 200 identifies the type of communication device that the inmateis using during the inmate communication based on the received datacorresponding to the inmate communication. In some embodiments, thecommunication module 212 of the inmate call processing server 200identifies the type of communication device to be a telephone 132,mobile device 134, or wireless communication device 136 based on atleast one of the type of communication data received and the metadata.At step 403, the inmate call processing server identifies the callrecipient. For example, the communication module 212 of the inmate callprocessing server 200 identifies the call recipient in the inmatecommunication based on the data corresponding to the inmatecommunication, such as the audio data, video data, and/or metadata. Insome embodiments, the communication module 212 utilizes voicerecognition and/or image recognition to determine and/or verify theidentity of the call recipient of the inmate communication.

At step 404, inmate call processing server retrieves an inmate profileof the inmate.

For example, inmate call processing server 200 retrieves the inmateprofile of the inmate from the inmate profile module 214, in which theinmate profile module 214 is configured to store profiles for aplurality of inmates. At step 405, inmate call processing serverdetermines whether the call recipient is included on a list of approvedcontacts of the inmate. For example, the time limit assignment module216 of the inmate call processing server 200 determines if the callrecipient of the inmate communication is on the list of approvedcontacts by parsing the list for an entry with identity information(e.g., a name and/or phone number) that matches the call recipient'sname and/or phone number.

If the name and/or phone number of the call recipient does not match theidentity information of an approved contact on the list, then method 400in this example proceeds to step 406. At step 406, inmate callprocessing server suspends the inmate communication. For example, theprocessing subsystem 210 of the inmate call processing server 200suspends or stops the communication between an inmate communicationdevice (e.g., telephone 132, mobile device 134, or wirelesscommunication device 136) and an outsider communication device (e.g.,telephone 142, mobile device 144, or wireless communication device 146).If the name and/or phone number of the call recipient matches theidentity information of an approved contact on the list, then method 400in this example proceeds to step 407. At step 407, inmate callprocessing server determines an allotted time limit for the inmatecommunication with the call recipient based on the type of communicationdevice. For example, the time limit assignment module 216 of the inmatecall processing server 200 utilizes the list of approved contacts fromthe inmate profile module 214 to identify values of time limits thathave been allotted for inmate communications with certain approvedcontacts. In some cases, the inmate is permitted 20 minutes, 30 minutes,45 minutes, or another period of time to communicate with a familymember and 45 minutes, 60 minutes, 2 hours, or another period of time tocommunicate with an attorney, or vice versa.

At step 408, inmate call processing server obtains ratings of aninmate's behaviors at the correctional facility. For example, time limitassignment module 216 parses data of an inmate profile from the inmateprofile module 214 to obtain values of one or more ratings of aninmate's behaviors at the correctional facility. At step 409, inmatecall processing server identifies whether at least one value of the oneor more ratings of the inmate's behaviors is above or equal to apredefined threshold. For example, time limit assignment module 216determines whether at least one value of the one or more ratings of theinmate's behaviors is above or equal to a predefined threshold in orderto identify whether an inmate is adhering to rules and policies of thecorrectional facility. If at least one value of the one or more ratingsof the inmate's behaviors is above or equal to the predefined threshold,then method 400 in this example proceeds to step 410.

At step 410, inmate call processing server updates the allotted timelimit for the inmate communication by an additional time period. Forexample, time limit assignment module 216 updates or adds an additionaltime period to the allotted time limit for inmate communication, inwhich the additional time period corresponds to the values of the one ormore ratings of the inmate's behaviors. At step 411, inmate callprocessing server assigns the updated allotted time limit to the inmatecommunication. For example, time limit assignment module 216 assigns theupdated allotted time limit to the inmate communication by associatingthe time limit value with the inmate in one or more records storedwithin the time limit assignment module 216 and/or the communicationdatabase 220. At step 413, inmate call processing server suspends theinmate communication after the allotted time limit. For example, theprocessing subsystem 210 applies the updated allotted time limit to theinmate communication in or near real-time, and the processing subsystem210 also suspends the inmate communication after the updated allottedtime has expired.

If at least one value of the one or more ratings of the inmate'sbehaviors is below the predefined threshold, then method 400 in thisexample proceeds to step 412. At step 412, inmate call processing serverassigns the allotted time limit to the inmate communication. Forexample, time limit assignment module 216 assigns the allotted timelimit determined in step 407 to the inmate communication withoutupdating the time limit to account for the inmate's behaviors. Timelimit assignment module 216 assigns the allotted time limit to theinmate communication by associating the time limit value with the inmatein one or more records stored within the time limit assignment module216 and/or the communication database 220. At step 413, inmate callprocessing server suspends the inmate communication after the allottedtime limit. For example, the processing subsystem 210 applies theallotted time limit to the inmate communication in or near real-time,and the processing subsystem 210 also suspends the inmate communicationafter the allotted time has expired.

FIG. 5 illustrates a flowchart diagram of a method 500 of extending timelimits of inmate communications, via an inmate communication processingserver, such as inmate communication processing server 200 of FIG. 2,according to embodiments of the present disclosure. The steps of method500 are performed by subsystems and modules of inmate call processingserver 200, such as communication module 212, inmate profile module 214,time limit assignment module 216, and/or time limit extension module218. Method 500 of FIG. 5 begins with step 501 applying a time limit toan inmate communication. For example, time limit assignment module 216and processing subsystem 210 of inmate call processing server 200assigns and applies a time limit to inmate communication following steps401-412 in method 400 of FIG. 4.

At step 502, the inmate call processing server monitors the time of theinmate communication. For example, time limit extension module 218 ofthe inmate call processing server 200 identifies the time limit assignedto the inmate communication and monitors the communication with respectto time. At step 503, the inmate call processing server determineswhether the remaining time in the inmate communication is less than orequal to a predetermined period of time. For example, time limitextension module 218 determines whether the remaining time in the inmatecommunication is less than or equal to 10 seconds, 30 seconds, 1 minute,5 minutes, 10 minutes, or another predetermined period of time. If theremaining time in the inmate communication is greater than thepredetermined period of time, then method 500 in this example proceedsto step 502, at which the time limit extension module 218 continuesmonitoring the time of the inmate communication until the remaining timein the inmate communication is less than or equal to the predeterminedperiod of time.

If the remaining time in the inmate communication is less than or equalto the predetermined period of time, then method 500 in this exampleproceeds to step 504. At step 504, the inmate call processing servertransmits one or more alerts to an inmate communication device. Forexample, time limit extension module 218 generates and transmits one ormore alerts to an inmate communication device (e.g., telephone 132,mobile device 134, or wireless communication device 136), in which theone or more alerts indicate the time limit assigned to the inmatecommunication, the remaining length of time in the inmate communication,and/or options to extend the time limit.

At step 505, the inmate call processing server determines whether arequest for an extension has been received from the inmate communicationdevice. For example, time limit extension module 218 determines whetherthe inmate call processing server 200 has received, from the inmatecommunication device, a request to extend the time limit of the inmatecommunication in response to the one or more alerts. If a request for anextension has not been received from the inmate communication device,then method 500 in this example proceeds to step 506. At step 506, theinmate call processing server suspends the inmate communication afterthe end of the time limit. For example, the processing subsystem 210 ofthe inmate call processing server 200 suspends or stops thecommunication between an inmate communication device (e.g., telephone132, mobile device 134, or wireless communication device 136) and anoutsider communication device (e.g., telephone 142, mobile device 144,or wireless communication device 146) after the time limit has expired.

If a request for an extension has been received from the inmatecommunication device, then method 500 in this example proceeds to step507. At step 507, the inmate call processing server determines whether aspecific time extension has been requested. For example, time limitextension module 218 determines whether the inmate call processingserver 200 has received, from the inmate communication device, a requestto extend the time limit of the inmate communication by a specificlength of time, such as 20 minutes, 30 minutes, 60 minutes, or the like.If a request for a specific time extension has not been requested, thenmethod 500 in this example proceeds to step 508. At step 508, the inmatecall processing server assigns a predetermined time extension to theinmate communication. For example, time limit extension module 218assigns a predetermined time extension to the time limit of the inmatecommunication. At step 510, the inmate call processing server suspendsthe inmate communication after the time extension is over. For example,the processing subsystem 210 applies the predetermined time extension tothe time limit of the inmate communication, and the processing subsystem210 also suspends the inmate communication after the time limit(including the predetermined time extension) has expired.

If a request for a specific time extension has been requested, thenmethod 500 in this example proceeds to step 509. At step 509, the inmatecall processing server determines whether the inmate has been approvedfor a specific time extension. For example, time limit extension module218 determines whether the inmate is eligible or approved for a specifictime extension based on inmate profile data obtained from the inmateprofile module 214 and/or communication database 220. If the inmate isnot approved for the requested specific time extension, then method 500in this example proceeds to step 508, at which time limit extensionmodule 218 assigns a predetermined time extension to the inmatecommunication. At step 510, processing subsystem 210 then suspends theinmate communication after the time limit (including the predeterminedtime extension) has expired.

If the inmate is approved for the requested specific time extension,then method 500 in this example proceeds to step 511. At step 511, theinmate call processing server assigns the specific time extensionrequested by the inmate to the inmate communication. For example, timelimit extension module 218 assigns the specific time extension requestedby the inmate to the time limit of the inmate communication. At step510, the inmate call processing server suspends the inmate communicationafter the specific time extension is over. For example, the processingsubsystem 210 applies the specific time extension to the time limit ofthe inmate communication, and the processing subsystem 210 also suspendsthe inmate communication after the time limit (including the specifictime extension) has expired.

Exemplary Computer Implementation

It will be apparent to persons skilled in the relevant art(s) thatvarious elements and features of the present disclosure, as describedherein, can be implemented in hardware using analog and/or digitalcircuits, in software, through the execution of computer instructions byone or more general purpose or special-purpose processors, or as acombination of hardware and software.

The following description of a general purpose computer system isprovided for the sake of completeness. Embodiments of the presentdisclosure can be implemented in hardware, or as a combination ofsoftware and hardware. Consequently, embodiments of the disclosure maybe implemented in the environment of a computer system or otherprocessing system. For example, the methods of FIGS. 4-5 can beimplemented in the environment of one or more computer systems or otherprocessing systems. An example of such a computer system 600 is shown inFIG. 6. One or more of the modules depicted in the previous figures canbe at least partially implemented on one or more distinct computersystems 600.

Computer system 600 includes one or more processors, such as processor604. Processor 604 can be a special purpose or a general purpose digitalsignal processor. Processor 604 is connected to a communicationinfrastructure 602 (for example, a bus or network). Various softwareimplementations are described in terms of this exemplary computersystem. After reading this description, it will become apparent to aperson skilled in the relevant art(s) how to implement the disclosureusing other computer systems and/or computer architectures.

Computer system 600 also includes a main memory 606, preferably randomaccess memory (RAM), and may also include a secondary memory 608.Secondary memory 608 may include, for example, a hard disk drive 610and/or a removable storage drive 612, representing a floppy disk drive,a magnetic tape drive, an optical disk drive, or the like. Removablestorage drive 612 reads from and/or writes to a removable storage unit616 in a well-known manner. Removable storage unit 616 represents afloppy disk, magnetic tape, optical disk, or the like, which is read byand written to by removable storage drive 612. As will be appreciated bypersons skilled in the relevant art(s), removable storage unit 616includes a computer usable storage medium having stored therein computersoftware and/or data.

In alternative implementations, secondary memory 608 may include othersimilar means for allowing computer programs or other instructions to beloaded into computer system 600. Such means may include, for example, aremovable storage unit 618 and an interface 614. Examples of such meansmay include a program cartridge and cartridge interface (such as thatfound in video game devices), a removable memory chip (such as an EPROM,or PROM) and associated socket, a thumb drive and USB port, and otherremovable storage units 618 and interfaces 614 which allow software anddata to be transferred from removable storage unit 618 to computersystem 600.

Computer system 600 may also include a communications interface 620.Communications interface 620 allows software and data to be transferredbetween computer system 600 and external devices. Examples ofcommunications interface 620 may include a modem, a network interface(such as an Ethernet card), a communications port, a PCMCIA slot andcard, etc. Software and data transferred via communications interface620 are in the form of signals which may be electronic, electromagnetic,optical, or other signals capable of being received by communicationsinterface 620. These signals are provided to communications interface620 via a communications path 622. Communications path 622 carriessignals and may be implemented using wire or cable, fiber optics, aphone line, a cellular phone link, an RF link and other communicationschannels.

As used herein, the terms “computer program medium” and “computerreadable medium” are used to generally refer to tangible storage mediasuch as removable storage units 616 and 618 or a hard disk installed inhard disk drive 610. These computer program products are means forproviding software to computer system 600.

Computer programs (also called computer control logic) are stored inmain memory 606 and/or secondary memory 608. Computer programs may alsobe received via communications interface 620. Such computer programs,when executed, enable the computer system 600 to implement the presentdisclosure as discussed herein. In particular, the computer programs,when executed, enable processor 604 to implement the processes of thepresent disclosure, such as any of the methods described herein.Accordingly, such computer programs represent controllers of thecomputer system 600. Where the disclosure is implemented using software,the software may be stored in a computer program product and loaded intocomputer system 600 using removable storage drive 612, interface 614, orcommunications interface 620.

In another embodiment, features of the disclosure are implementedprimarily in hardware using, for example, hardware components such asapplication-specific integrated circuits (ASICs) and gate arrays.Implementation of a hardware state machine so as to perform thefunctions described herein will also be apparent to persons skilled inthe relevant art(s).

CONCLUSION

It is to be appreciated that the Detailed Description section, and notthe Abstract section, is intended to be used to interpret the claims.The Abstract section may set forth one or more, but not all exemplaryembodiments, and thus, is not intended to limit the disclosure and theappended claims in any way.

The disclosure has been described above with the aid of functionalbuilding blocks illustrating the implementation of specified functionsand relationships thereof. The boundaries of these functional buildingblocks have been arbitrarily defined herein for the convenience of thedescription. Alternate boundaries may be defined so long as thespecified functions and relationships thereof are appropriatelyperformed.

It will be apparent to those skilled in the relevant art(s) that variouschanges in form and detail can be made therein without departing fromthe spirit and scope of the disclosure. Thus, the disclosure should notbe limited by any of the above-described exemplary embodiments, butshould be defined only in accordance with the following claims and theirequivalents.

1. (Canceled)
 2. A system for determining time limits of inmatecommunications in a correctional facility, the system comprising: acommunication center; a communication processing server comprising adatabase and at least one processor; and at least one network configuredto communicatively couple the communication processing server and thecommunication center with a plurality of communication devices, whereinthe communication center is configured to: receive an inmatecommunication from a first communication device of an inmate; route theinmate communication to a second communication device of a callrecipient outside the correctional facility; and transmit communicationdata of the inmate communication to the communication processing server,and wherein the at least one processor of the communication processingserver is configured to: receive the communication data from thecommunication center; convert the communication data to a differentformat to extract metadata of the inmate communication; retrieve aninmate profile of the inmate from the database based on the metadata ofthe inmate communication; and determine a time limit for the inmatecommunication based on analyzing the inmate profile.
 3. The system ofclaim 2, wherein the metadata of the inmate communication comprises atleast one of a date and time of the inmate communication, identities ofthe inmate and the call recipient, and locations of the first and secondcommunication devices.
 4. The system of claim 2, wherein to determinethe time limit of the inmate communication of the inmate, the at leastone processor of the communication processing server is furtherconfigured to: parse data of the inmate profile to obtain values ofratings of the inmate's behaviors at the correctional facility; andidentify whether a value of the ratings of the inmate's behaviors isabove or below a predefined threshold.
 5. The system of claim 4, whereinthe at least one processor of the communication processing server isfurther configured to: determine a first time limit in response toidentifying that the value of the ratings of the inmate's behaviors isabove the predefined threshold; and determine a second time limit inresponse to identifying that the value of the ratings of the inmate'sbehaviors is below the predefined threshold, wherein the first timelimit is greater than the second time limit.
 6. The system of claim 2,wherein the at least one processor of the communication processingserver is further configured to: apply the time limit to the inmatecommunication of the inmate; and transmit a notification to the firstand second communication devices indicating the time limit.
 7. Thesystem of claim 2, wherein to determine the time limit of the inmatecommunication of the inmate, the at least one processor of thecommunication processing server is further configured to: identify alist of approved contacts for the inmate in the inmate profile; matchthe call recipient of the inmate communication with an entry in the listof approved contacts; identify the time limit value permitted for thecall recipient based on the entry in the list of approved contacts; andapply the time limit value to the inmate communication of the inmatewith the call recipient.
 8. The system of claim 7, wherein to apply thetime limit to the inmate communication, the at least one processor ofthe communication processing server is further configured to: suspendthe inmate communication after a duration of the inmate communicationhas reached the time limit.
 9. The system of claim 2, wherein the firstand second communication devices comprise at least one of a mobiledevice, a payphone, a landline phone, or a tablet computer.
 10. Thesystem of claim 2, wherein the inmate communication is a voice call, anaudio communication, or video communication between the inmate and thecall recipient.
 11. A communication processing server for determiningtime limits of inmate communications in a correctional facility, theserver comprising: a memory configured to store an inmate profile of aninmate; a network interface device configured to communicate with thememory, a first communication device of the inmate, and a secondcommunication device of a call recipient; and at least one processorconfigured to: receive communication data of an inmate communicationfrom the first communication device, wherein the inmate communicationcomprises an audio or video communication between the inmate and thecall recipient; convert the communication data to a different format toextract metadata of the inmate communication; retrieve an inmate profileof the inmate from the memory based on the metadata of the inmatecommunication; and determine a time limit for the inmate communicationbased on analyzing the inmate profile.
 12. The communication processingserver of claim 11, wherein the metadata of the inmate communicationcomprises at least one of a date and time of the inmate communication,identities of the inmate and the call recipient, and locations of thefirst and second communication devices.
 13. The communication processingserver of claim 11, wherein the at least one processor is furtherconfigured to: apply the time limit to the inmate communication of theinmate; and transmit a notification to the first and secondcommunication devices indicating the time limit.
 14. The communicationprocessing server of claim 11, wherein to determine the time limit ofthe inmate communication of the inmate, the at least one processor isfurther configured to: identify a list of approved contacts for theinmate in the inmate profile; match the call recipient of the inmatecommunication with an entry in the list of approved contacts; identifythe time limit value permitted for the call recipient based on the entryin the list of approved contacts; and apply the time limit value to theinmate communication of the inmate with the call recipient.
 15. A methodimplemented by an inmate communication processing system for determiningtime limits of inmate communications in a correctional facility, themethod comprising: receiving, by a communication center in the inmatecommunication processing system, an inmate communication from a firstcommunication device of an inmate; routing, by the communication center,the inmate communication to a second communication device of a callrecipient outside the correctional facility; transmitting, from thecommunication center, communication data of the inmate communication toa communication processing server in the inmate communication processingsystem; receiving, at the communication processing server, thecommunication data from the communication center; converting, by atleast one processor in the communication processing server, thecommunication data to a different format to extract metadata of theinmate communication; based on the metadata of the inmate communication,retrieving an inmate profile of the inmate from a database in the inmatecommunication processing system; and determining, by the at least oneprocessor, a time limit for the inmate communication based on analyzingthe inmate profile.
 16. The method of claim 15, wherein the metadata ofthe inmate communication comprises at least one of a date and time ofthe inmate communication, identities of the inmate and the callrecipient, and locations of the first and second communication devices.17. The method of claim 15, wherein the determining the time limit ofthe inmate communication of the inmate further comprises: parsing dataof the inmate profile to obtain values of ratings of the inmate'sbehaviors at the correctional facility; and identifying whether a valueof the ratings of the inmate's behaviors is above or below a predefinedthreshold.
 18. The method of claim 17, further comprising: determining afirst time limit in response to identifying that the value of theratings of the inmate's behaviors is above the predefined threshold; anddetermining a second time limit in response to identifying that thevalue of the ratings of the inmate's behaviors is below the predefinedthreshold, wherein the first time limit is greater than the second timelimit.
 19. The method of claim 15, further comprising: applying the timelimit to the inmate communication of the inmate; and transmitting anotification to the first and second communication devices indicatingthe time limit.
 20. The method of claim 15, wherein the determining thetime limit of the inmate communication of the inmate further comprises:identifying a list of approved contacts for the inmate in the inmateprofile; match the call recipient of the inmate communication with anentry in the list of approved contacts; identifying the time limit valuepermitted for the call recipient based on the entry in the list ofapproved contacts; and applying the time limit value to the inmatecommunication of the inmate with the call recipient.
 21. The method ofclaim 20, wherein the applying the time limit to the inmatecommunication further comprises: suspending the inmate communicationafter a duration of the inmate communication has reached the time limit.